Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Buenos Aires Challenger Davis Cup, World Group, Q, FIN-POR 3-1 Millennium Estoril Open - Estoril Murcia Challenger Girona Challenger French Open - Paris Wimbledon - London Nordea Open - Bastad U.S. Open - New York Australian Open - Melbourne Grand Prix Hassan II - Marrakech Wimbledon - London M25 Setubal French Open - Paris M25 Mataro U.S. Open - New York Portugal F4 Spain F17 Mexico F11 USA F2 USA F3 Canada F1 Czech Rep. F2 Czech Rep. F3 Spain F18 Usa F14 Usa F15 Usa F18 Usa F5 Portugal F3 Switzerland F3 Spain F11 Italy F5 Usa F13 Usa F15 Brazil F22 Brazil F31 Brazil F32 Brazil F33 Brazil F1 Colombia F1 Colombia F2 USA F7 Brazil F26 Spain F32 Brazil F33 USA F1 M15 Vale Do Lobo M15 Sintra M15 Sintra M25 Porto M25 Vale Do Lobo M25 Vale do Lobo M25 Sintra M25 Setubal M25 Loule M25 Quinta Do Lago M25 Vale do Lobo M25 Faro M15 Doboj M15 Prijedor M15 Frascati Canada F2 M25 Setubal Spain F18 M15 Monastir M25 Faro M25 Quinta Do Lago M25 Valldoreix Portugal F5 Portugal F6 Spain F7 Portugal F1 Portugal F2 Portugal F3 Sweden F5 USA F26 Mexico F10 M25 Quinta Do Lago Mexico F1 Costa Rica F1 Colombia F2 Canada F3 Usa F7 Usa F8 M25 Vila Real de Santo Antonio M25 Vila Real de Santo Antonio M25 Idanha-a-Nova M25 Faro M25 Sintra M25 Sintra M25 Sintra Levene Gouldin & Thompson Tennis Challenger - Binghamton Semgroup Challenger - Tulsa Bucaramanga Challenger Dallas Challenger Le Gosier Challenger Prague Challenger Bordeaux Challenger Florianopolis Challenger Dallas Challenger Santos Challenger M15 Monastir Santos Challenger Sao Paulo Challenger Barranquilla Challenger Aix En Provence Challenger Marburg Challenger Blois Challenger Braunschweig Challenger Meknes Challenger Lima Challenger Guayaquil Challenger Rio De Janeiro Challenger Francavilla Challenger Bordeaux Challenger Todi Challenger Milan Challenger Braunschweig Challenger Floridablanca Challenger Como Challenger Seville Challenger Campinas Challenger Buenos Aires Challenger Guayaquil Challenger Montevideo Challenger Santiago Challenger Santiago Challenger M25 Vila Real de Santo Antonio Tunis Challenger Braga Challenger M25 Sabadell M25 Villena M25 Porto Guayaquil Challenger Montevideo Challenger Buenos Aires Challenger Orlando Challenger M25 Vale do Lobo Chennai Challenger Barletta Challenger Sarasota Challenger Francavilla Challenger Braga Challenger Lisbon Challenger Nur-Sultan Challenger Sopot Challenger Campinas Challenger Ann Arbor Challenger Lisbon Challenger Oeiras 3 Challenger Oeiras 4 Challenger Biella 7 Challenger Milan Challenger Porto Challenger Tampere Challenger Verona Challenger Maia 2 Challenger Bendigo Challenger Cherbourg Challenger Forli 5 Challenger Roseto Degli Abruzzi 2 Challenger Oeiras 1 Challenger Oeiras 2 Challenger Perugia Challenger Porto Challenger Lima Challenger Braga Challenger Puerto Vallarta Challenger Campinas Challenger Rio De Janeiro Challenger Girona Challenger Sao Leopoldo Challenger Maia Challenger Oeiras 1 Challenger Oeiras 2 Challenger M25 Mataro Waco Challenger M25 Martos Oeiras 3 Challenger M25 Mungia M15 Meerbusch M25 Bakio M15 Chieti Como Challenger M25 Idanha-a-Nova Lisbon Challenger Oeiras 1 Challenger Oeiras 2 Challenger Madrid Challenger Oeiras 3 Challenger Francavilla Challenger M25 Monastir Oeiras 4 Challenger Zagreb Challenger Bratislava 1 Challenger Milan Challenger Brasov Challenger M25 Monastir Porto Challenger Todi Challenger Cassis Challenger Curitiba Challenger Guayaquil Challenger Lima 2 Challenger Oeiras 2 Challenger Tenerife 1 Challenger M25 Loule M25 Tavira Oeiras 4 Challenger M25 Portimao Estoril Challenger 2007 Knoxville Challenger - Knoxville Campinas Challenger Porto 2 Challenger Seville Challenger M25 Tavira M25 Santa Margherita di Pula Porto Alegre Challenger Challenger Banque Nationale - Granby M25 Vale do Lobo Abierto Internacional Varonil Ciudad de Cancun - Cancun M25 Vale do Lobo Porto Alegre Challenger Sao Jose Do Rio Preto Challenger M25 Vila Real de Santo Antonio M25 Vale do Lobo Sao Paulo Challenger M25 Porto Lexington Challenger Porto Alegre Challenger Barletta Challenger Campinas Challenger Sao Paulo Challenger Bucaramanga Challenger Sao Paulo Challenger Bordeaux Challenger Tampere Challenger Belem Challenger Rio De Janeiro Challenger Santo Domingo Challenger Estoril Open - Estoril M25 Quinta do Lago Barletta Challenger Abierto Internacional de Salinas 'Dario Expreso' - Salinas Sacramento Challenger - Sacramento M25 Reus Caltanissetta Challenger Lima Challenger Columbus Challenger Lima Challenger Estoril Open - Estoril Gerry Weber Open - Halle Braunschweig Challenger Tampere Challenger Brasilia Challenger Salvador Challenger Prostejov Challenger Belo Horizonte Challenger Braunschweig Challenger M25 Figueira da Foz Sao Paulo Challenger Sao Paulo Challenger Corrientes Challenger Santiago Challenger Forli Challenger Bangkok Challenger Amersfoort Challenger Milan Challenger Braunschweig Challenger Rennes Challenger Pilot Pen Tennis - New Haven Le Gosier Challenger Lima Challenger Estoril Open - Estoril Rome Challenger Lisbon Challenger Madrid Challenger Estoril Open - Estoril Rome Challenger Genova Challenger Biella Challenger Campinas Challenger Estoril Open - Estoril Open de Nice Cote d'Azur - Nice Santo Domingo Challenger Como Challenger Naples Challenger - Naples VTR Open - Vina del Mar Brasil Open - Sao Paulo Copa Claro - Buenos Aires Estoril Open - Estoril VTR Open - Vina del Mar Brasil Open - Sao Paulo Copa Claro - Buenos Aires Furth Challenger Delray Beach International Tennis Championships - Delray Beach Portugal Open - Oeiras Bancolombia Open - Bogota U.S. National Indoor Tennis Championships - Memphis Roma Open Challenger - Rome Delray Beach Open - Delray Beach Brasil Open - Sao Paulo Manama Challenger III Challenger Isla de Gran Canaria Ciudad de Telde - Telde Tenerife 3 Challenger Portugal Open - Oeiras San Remo Tennis Cup - San Remo Bet-at-home Open - Hamburg Bordeaux Challenger Nielsen USTA Pro Tennis Championship - Winnetka Moncton Men's Challenger - Moncton Montechiarugolo - Parma Challenger Erste Bank Open - Vienna Swiss Indoors Basel - Basel M25 Sintra Qatar ExxonMobil Open - Doha Oldum Brown Vancouver Open - Vancouver Girona Challenger Abierto Mexicano Telcel - Acapulco Montevideo Challenger US Men's Clay Court Championship - Houston Braga Challenger Ford Tennis Championships - Louisville Millennium Estoril Open - Estoril Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Montevideo Challenger Millennium Estoril Open - Estoril SkiStar Swedish Open - Bastad Tunis Challenger Konzum Croatia Open - Umag Winston-Salem Open - Winston-Salem Rakuten Japan Open - Tokyo If Stockholm Open - Stockholm Aircel Chennai Open - Chennai Apia International - Sydney Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Scheveningen Challenger Brasil Open - Sao Paulo Montevideo Challenger Millennium Estoril Open - Estoril Open Parc - Lyon Braga Challenger Valencia Challenger Asuncion Challenger Santiago Challenger Sao Paulo Challenger Recife Challenger Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Trieste Challenger Brasil Open - Sao Paulo Millennium Estoril Open - Estoril Maia Challenger Shenzhen Challenger Campos do Jordao Challenger Seoul Challenger Recife Challenger Belo Horizonte Challenger Buenos Aires Challenger Abierto Mexicano - Los Cabos Buenos Aires Challenger Le Gosier Challenger Blumenau Challenger Kosice Challenger Marburg Challenger Arad Challenger Timisoara Challenger Millennium Estoril Open - Estoril St. Remy Challenger Campos do Jordao Challenger San Juan Challenger Montevideo Challenger Sao Leopoldo Challenger ATP Challenger Tour Finals Sao Paulo Challenger Bucaramanga Challenger Itajai Challenger Campbells Hall of Fame Tennis Championships - Newport Campinas Challenger Sao Paulo Challenger Buenos Aires Challenger Montevideo Challenger Challenger Britania Zavaleta - Puebla Salinas Challenger Bogota Challenger Guayaquil Challenger Bucaramanga Challenger Dallas Challenger Panama City Challenger Itajai Challenger Santos Challenger Delray Beach International Tennis Championships - Delray Beach Blois Challenger Estoril Open - Estoril Yokohama Challenger Tampere Challenger Campinas Challenger Charlottesville Challenger Knoxville Challenger Champaign Challenger Bucaramanga Challenger Dallas Challenger Santo Domingo Challenger Irving Challenger Le Gosier Challenger Sarasota Challenger Aix En Provence Challenger Savannah Challenger Bordeaux Challenger GHI Bronx Tennis Classic - Bronx Mestre Challenger Caltanissetta Challenger Millennium Estoril Open - Estoril Aptos Challenger Vancouver Challenger Como Challenger BB&T Atlanta Open - Atlanta Campinas Challenger Porto Alegre Challenger Bucaramanga Challenger Jonkoping Challenger Sao Paulo Challenger Kazan Challenger Napoli Challenger Sao Jose Do Rio Preto Challenger Turin Challenger Bordeaux Challenger Mestre Challenger Vicenza Challenger Bet-at-home Open - Hamburg Buenos Aires Challenger Plava Laguna Croatia Open - Umag Genova Challenger Sao Leopoldo Challenger Montevideo Challenger Guayaquil Challenger Barletta Challenger Bordeaux Challenger Montevideo Challenger Lima 2 Challenger Generali Open - Kitzbuhel Bangkok Challenger Buenos Aires Challenger Santo Domingo Challenger Sao Paulo Challenger Maia Challenger Prague 2 Challenger Oeiras 1 Challenger Oeiras 2 Challenger Poznan Challenger San Marino Challenger Braga Challenger Lisbon Challenger Maia 1 Challenger Forli 4 Challenger Zadar Challenger Bangkok Challenger Forli 6 Challenger Oeiras 3 Challenger Braunschweig Challenger Aix En Provence Challenger Lisbon Challenger Las Vegas Challenger Canberra Challenger Monterrey Challenger Las Franquesas del Valles Challenger Oeiras 4 Challenger Porto Challenger Augsburg Challenger Mallorca Challenger Seville Challenger Santa Fe 2 Challenger Tenerife 2 Challenger Ostrava Challenger Prague Challenger Lyon Challenger Ilkley Challenger Poznan Challenger Trieste Challenger Porto 2 Challenger Seville Challenger Sibiu Challenger Lisbon Challenger Braga Challenger Campinas Challenger Montevideo Challenger Oeiras 1 Challenger Oeiras 3 Challenger Tenerife 2 Challenger Murcia Challenger Prague Challenger Oeiras 5 Challenger Bratislava 1 Challenger National Bank Men's Rimouski Challenger - Rimouski JSM Challenger of Champaign - Urbana Pozoblanco Challenger Sao Paulo Challenger Porto Challenger Sumter Challenger Lisbon Challenger Suzhou Challenger Guayaquil Challenger Newport Beach Challenger Sony Ericsson Open - Miami Sony Ericsson Open - Miami BNP Paribas Open - Indian Wells Sony Ericsson Open - Miami BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Mutua Madrid Open - Madrid BNP Paribas Open - Indian Wells Maia Challenger Western & Southern Open - Cincinnati Miami Open - Miami Miami Open - Miami St. Petersburg Open - St. Petersburg Shenzhen Open - Shenzhen Mercedes Cup - Stuttgart EFG Swiss Open - Gstaad U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne Millennium Estoril Open - Estoril French Open - Paris Wimbledon - London Generali Open - Kitzbuhel U.S. Open - New York Australian Open - Melbourne Wimbledon - London U.S. Open - New York Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne BNP Paribas Open - Indian Wells U.S. Open - New York U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Davis Cup, Group 1, 1R, GEO-POR 3-2 Davis Cup, Group 2, 2R, POR-TUN 4-1 Davis Cup, Group II, 2R, POR-LTU 5-0 Davis Cup, Group II, 3R, MDA-POR 2-3 Davis Cup, Group I, 1R, SLO-POR 3-2 Davis Cup, Group I, PO, RUS-POR 4-1 Davis Cup, Group II, 3R, POR-BLR 3-2 Davis Cup, Group I, 1R, POR-AUT 1-4 Davis Cup, Group I, PO, POR-SLO 5-0 Davis Cup, Group I, 1R, POR-ISR 5-0 Davis Cup, Group I, 2R, POR-UKR 4-1 Davis Cup, Group I, 2R, SWE-POR 3-2 Davis Cup, Group I, 1R, ROU-POR 3-1 Davis Cup, Group I, PO, POR-POL 4-0 Davis Cup, World Group I, 1R, NOR-POR 3-1 Wimbledon (juniors) U.S. Open (juniors) Australian Open (juniors) U.S. Open (juniors) French Open (juniors) Wimbledon (juniors) Davis Cup, Group I, PO, SVK-POR 3-1 All Lower level tournaments French Open (juniors) Davis Cup, Group I, PO, MON-POR 2-3 Olympics - Rio de Janeiro